1. Field of the Invention
The present invention relates to the field of computer systems. More specifically, the present invention relates to art of data management in a networked computing environment.
2. Background Information
Networked client/server computing is known in the art. With recent advances in networking and related technologies, there is increasing interest in networked computing that is even more server reliant than in the past. For example, there is increasing interest in network computing that employs "minimally equipped" clients, with a server providing most of the processing for the "minimally equipped" clients. Particular examples of such "minimally equipped" clients include Explora, manufactured by Networking Computing Devices, Inc. of Mountain View, Calif. assignee of the present invention, and Network Station, sold by IBM of Armonk, N.Y.
Historically, there is little if any coordination in managing data shared by both the server and its clients. Typically, in response to a client's request, a server performs the processing necessary to service the request, and returns the response data, if any, to the client. Upon returning the response data, the server may or may not preserve the response data or any of the working data in anticipation of subsequent requests. Whichever the case may be, the action is taken unilaterally. In the meantime, the client uses the response data as its need dictates. In like manner, the client may or may not preserve the response data, upon "using" it, and the action is also taken unilaterally. In other words, the post response actions of the server and its clients are uncoordinated.
As a result, the response data may be stored in the server only, on both the server as well as the client, or on the client. Depending on the application, each of the three cases may be an inefficient approach to storing the response data. For example, if the application is unlikely to require the response data to be updated, it is inefficient to continue to store the data on the server. It is especially inefficient if the data is stored in the server only, and the same data is required by the client over and over again. Similarly, if the application is likely to require the response data to be updated, it is inefficient to store the data on the client. It is especially inefficient if the data is stored in the client only, and the update operation requires the current state of the data to be provided to the server again.
This problem is especially critical in networked client/server computing involving "minimally equipped" clients that heavily depend on the server, where large volume of data (e.g. pixel maps) are generated by the server and provided to the client, and the likelihood of the server having to update the data can not be predetermined. Thus, a more efficient approach that optimizes the consumption of the computing capacity of the server and the bandwidth available on the network is desired. In view of this and other desired results, the subject data migration/shadowing method and apparatus is invented.